package twelfth.内存操作流;

import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
import java.io.IOException;

public class 使用内存操作流完成一个大写字母转换为小写字母的程序 {
    public static void main(String[] args) throws IOException {
        String s = "SHANGHAI,NANJING,KUNSHAN";
        ByteArrayInputStream bis = new ByteArrayInputStream(s.getBytes());//向内存中输入内容
        ByteArrayOutputStream bos = new ByteArrayOutputStream();
        int temp =0;
        while((temp=bis.read())!=-1){
            char c  = (char) temp;  //将读取的数字变为字符
            bos.write(Character.toLowerCase(c));//将字符变为小写   此时写入内存之中
        }
        String newStr = bos.toString();
        bis.close();
        bos.close();
        System.out.println(newStr);
    }
}
/**
 * 内存操作流的使用：
 * 一般都在生成一些临时信息的时候会使用，如果将这些信息保存在临时文件中，以后肯定还要删除。
 * 所以这时候用内存操作流就行。
 */
/*
D:\WorkSpaces\Java\jdk-21\bin\java.exe "-javaagent:D:\Software\IntelliJ IDEA\IntelliJ IDEA 2023.3.2\lib\idea_rt.jar=64948:D:\Software\IntelliJ IDEA\IntelliJ IDEA 2023.3.2\bin" -Dfile.encoding=UTF-8 -Dsun.stdout.encoding=UTF-8 -Dsun.stderr.encoding=UTF-8 -classpath D:\WorkSpaces\JavaDevelopBase_start_329\out\production\JavaDevelopBase_start_329 twelfth.内存操作流.使用内存操作流完成一个大写字母转换为小写字母的程序
shanghai,nanjing,kunsahn

Process finished with exit code 0

 */